This invention relates to computer telephony, specifically a method to efficiently allocate telephony resources based upon extrinsic circumstances.
Modern computer telephony systems are capable of processing large amounts of communications, either in the form of bandwidth broken down into specific, xe2x80x9cvirtualxe2x80x9d communication channels or actual, separate communication channels. These channels comprise the resources of the system. Communication over these channels may be voice, facsimile, video, data or other formats. In order to process each form of communication, a computer telephony system must configure each specific channel to communicate using a specific format. A computer telephony system may be configured in any of a plurality of variations to allocate its resources such that the needs of a specific group of users are met. For example, a computer telephony system may have 800 channels in total, 400 channels configured for voice communications, 300 channels configured for video communications, 80 channels configured for facsimile communications and 20 channels configured for data communications. The problem with the configuration of computer telephony resources is that it is board dependant or static. The resources can only be configured upon the start up of the computer telephony system. The configuration remains static during the operation of the system. In order to reallocate the system resources to meet changing needs, the system must be shut down, restarted and manually reconfigured by the system operator.
For example, the above-referenced 800 channel system is set-up in a typical xe2x80x9cdaytimexe2x80x9d configuration. That is, resources are more heavily allocated to voice and video than to facsimile and data because voice and video are people-intensive formats, i.e, people are at work during the day and use most of the telephony resources for voice telephone calls and video-conferencing. During evening and overnight periods, it is desirable to more heavily allocate resources to machine-intensive formats such as facsimile and data, i.e., during these time periods, most people are not at work, thus resources previously allocated to voice and video can be reallocated to facsimile and data formats, which do not require the presence of people. A typical xe2x80x9cnighttimexe2x80x9d configuration for an 800 channel system would be 100 channels configured for voice communications, 100 channels for video communication, 300 channels for facsimile communications and 300 channels for data communications. This reconfiguration requires two things, a system operator and a shut down of the system. The need for an operator presents the obvious problems of 1) insuring that she is present when reconfiguration is desired and 2) her compensation. Further, the shut down and restart of the system, no matter how brief, is unacceptable in this age of 24 hour per day business operations.
A related problem to the predictable or scheduled daytime/nighttime shift in need is the potential occurrence of unforseen shifts in need. For example, an emergency may occur during the middle of the day or a deadline may approach which prompts many people to work late. In either case, the utilization of voice resources approaches 100%. As it does this, the need to allocate more resources towards voice communications becomes great. Unless the system is reconfigured to reallocate resources from other communications to voice, capacity is reached and further voice communications cannot take place. Voice communications are either postponed or, in time-sensitive situations, permanently lost. This is intolerable. Further, the reallocation of resources, by requiring shutting down and restarting the system, temporarily requires decreasing all resources to zero. This too is an intolerable option, especially during exigent circumstances, because it completely cuts off all communications.
The above and other problems of the prior art are overcome in accordance with the present invention which relates to a technique to efficiently and automatically allocate telephony resources based upon dynamic and scheduled changes in the priority of communications and demand for resources.
First of all, this method replaces static, board assigned configuration control with an active, non-board based function. This removes the need for the shutting down and restarting of the system whenever the configuration is altered.
The method further comprises the application of at least two algorithms, one to respond to dynamic changes in resource allocation and another to respond to scheduled resource allocation. The two algorithms work in conjunction with one another to determine the optimum configuration with which to allocate the system""s resources, depending upon the estimated demand at a given time of day, and depending upon the actual demand at any given point in time. The method also makes provision for the modification and/or deactivation of the algorithms, and the manual allocation of resources, all by an operator.